using System;
using System.Collections.Generic;
using System.Text;
using System.Transactions;
using Hermes.Framework.FileSystem;

namespace Hermes.Framework
{
    public interface IResourceManager : IEnlistmentNotification, IDisposable
    {
        void Enlist();

        bool IsEnlisted();

        INonTransactableFileSystem FileSystem
        {
            set;
            get;
        }

        void WriteRedoLog(ITransactableOperation operation);

        void WriteUndoLog(ITransactableOperation operation);
    }
}
